docs: Breaking change — Some Microsoft.Extensions packages in .NET 11 shared framework#53565
docs: Breaking change — Some Microsoft.Extensions packages in .NET 11 shared framework#53565Copilot wants to merge 6 commits into
Conversation
…d framework (.NET 11) Agent-Logs-Url: https://github.com/dotnet/docs/sessions/e8635257-475f-450d-8351-50107ec8c6e1 Co-authored-by: gewarren <24882762+gewarren@users.noreply.github.com>
…rticle Agent-Logs-Url: https://github.com/dotnet/docs/sessions/e8635257-475f-450d-8351-50107ec8c6e1 Co-authored-by: gewarren <24882762+gewarren@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Adds a new .NET 11 compatibility article documenting that several Microsoft.Extensions.* assemblies are now provided by the shared framework (triggering NU1510 when referenced explicitly), and wires the new article into the .NET 11 compatibility index and TOC.
Changes:
- Added a new breaking change article describing the shared-framework inclusion of nine
Microsoft.Extensions.*libraries and related guidance. - Linked the new article from the .NET 11 Extensions compatibility index page.
- Added the new article to the compatibility TOC under .NET 11 > Extensions.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| docs/core/compatibility/extensions/11/extensions-in-shared-framework.md | New breaking change article describing NU1510 implications and recommended actions for framework-provided Microsoft.Extensions.* assemblies. |
| docs/core/compatibility/11.md | Adds the new Extensions breaking change to the .NET 11 index table. |
| docs/core/compatibility/toc.yml | Adds a TOC entry for the new .NET 11 Extensions breaking change article. |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
|
@copilot Please respond to remaining feedback. |
…geting guidance Agent-Logs-Url: https://github.com/dotnet/docs/sessions/b2a02110-0ef1-4f11-be45-fec2c67a75d5 Co-authored-by: gewarren <24882762+gewarren@users.noreply.github.com>
Addressed in commit 2074387:
|
|
|
||
| # Some Microsoft.Extensions packages included in shared framework | ||
|
|
||
| To reduce application size, simplify package dependencies, and streamline servicing, .NET 11 includes nine `Microsoft.Extensions.*` libraries in the base shared framework. Projects that explicitly reference these packages receive build warning [NU1510](/nuget/reference/errors-and-warnings/nu1510). You can resolve the warning by removing the `PackageReference`. If you depend on an older version of these packages, upgrading to the .NET 11 version might expose previously undocumented breaking changes introduced between older versions and .NET 11. |
There was a problem hiding this comment.
upgrading to the .NET 11 version might expose previously undocumented breaking changes introduced between older versions and .NET 11
I believe these breaking changes were documented (the ones listed at the end of this article).
|
|
||
| ## Previous behavior | ||
|
|
||
| Previously, the following `Microsoft.Extensions.*` libraries weren't part of the .NET base shared framework. Projects that needed them required explicit `PackageReference` entries, and the build process copied the assemblies to the output folder: |
There was a problem hiding this comment.
the .NET base shared framework
Is it worth mentioning that you get the shared framework by using Sdk="Microsoft.NET.Sdk", or similarly referencing any of the other SDKs?
Nine
Microsoft.Extensions.*libraries are now part of the .NET 11 base shared framework, making explicitPackageReferenceentries unnecessary fornet11.0-only projects and triggering NU1510 warnings. Projects pinned to old package versions may encounter runtime failures (MissingMethodException,TypeLoadException) due to accumulated breaking changes between those versions and 11.0.Changes
docs/core/compatibility/extensions/11/extensions-in-shared-framework.mdPackageReferencefornet11.0-only projectsnet10.0;net11.0); includes a conditionalPackageReferenceexample for projects that want to be explicitdocs/core/compatibility/11.md— added entry to Extensions tabledocs/core/compatibility/toc.yml— added entry under Extensions/.NET 11Internal previews